package com.sls.web.manager.game.service;

import java.util.List;

import com.sls.web.manager.game.pojo.DownstreamUserInfo;
import com.sls.web.manager.game.querybean.DownstreamUserQuery;
import com.sls.web.manager.page.Pagination;
import com.sls.web.manager.pojo.UserInfoVO;

/**
 * 下游用户信息操作
 * 
 * @author cx
 * 
 */
public interface DownstreamUserService {

	/**
	 * 新增下游用户信息
	 * 
	 * @param userInfo
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public boolean save(DownstreamUserInfo userInfo, UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 修改下游用户信息
	 * 
	 * @param userInfo
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public boolean update(DownstreamUserInfo userInfo, UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 单条查询
	 * 
	 * @param userNo
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public DownstreamUserInfo queryDownstreamUserByUserNo(String userNo,
			UserInfoVO userInfoVO) throws Exception;

	/**
	 * 通过主键查询详情
	 * 
	 * @param id
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public DownstreamUserInfo queryDownstreamUserById(String id,
			UserInfoVO userInfoVO) throws Exception;

	/**
	 * 分页查询
	 * 
	 * @param userQuery
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public Pagination<DownstreamUserInfo> queryDownstraeamUserInfo(
			DownstreamUserQuery userQuery, UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 查询所有用户信息
	 * 
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public List<DownstreamUserInfo> queryAllDownUserInfo(UserInfoVO userInfoVO)
			throws Exception;
}
